BITNET Relay

Bitnet Relay—officially The Interchat Relay Network, also known simply as Relay—was a precursor to today's Internet Relay Chat and various online chat systems. It was developed by Jeff Kell (then at JEFF@UTCVM), of (University of Tennessee, Chattanooga) in 1985 in REXX.

Even before Relay was implemented, one could send an instant message (called MSG) to someone on another computer if one knew the other person's userid (i.e., screen name or login) and the name of the remote computer system the person was logged into. This was a basic function of BITNET systems.

Relay was a chat service running on a special id on several suitable hosts in the Bitnet. To use it, one would send a MSG to a userid called RELAY. The Relay program running on that userid would then provide multi-user chat functions, primarily in form of "channels" (chat rooms). The MSG could contain either a command for Relay (prefixed by the ever since popular "/" slash character command prefix) or a message for one or more real persons at a remote host (typically mainframe computers).

The following is an example of a session:

/SIGNUP robert harper
* Thank you for signing up, robert harper.
* Now use the /SIGNON <nickname> command to
* establish a nickname and to logon Relay.

/SIGNON rob
Welcome to the Interchat Relay Network, Rob.
Your host is RELAY@FINHUTC (Finland).
Your last logon was at 08:39:23 on 03/17/89.
There are 67 users on 27 relays.

/HELP
**************** Relay Commands ***************
/Bye . . . . . . . . . . . . Signoff from Relay
/Channel <num> . . . . .Change to channel <num>
/COntact <host-nick> . .Show Relay contact info
/Getop . . . . . Try to summon a Relay operator
/Help. . . . . . . . . . . . . Prints this list
/INFo. . . . . . . . . . . Send RELAY INFO file
/Invite <nick> . . .Invite user to your channel
/LINks . . . . . . . . . . .Shows active relays
/List. . . . . . . . . . . List active channels
/Msg <nick> <text> . . . .Sends private message
/Nick <newnick>. . . . . . Change your nickname
/NAmes <channel> . . . . .Show users with names
/Rates . . . . . . . . . .Display message rates
/SErvers <node>. . . . Show relays serving node
/Signon <nick> <channel> . . . .Signon to Relay
/Signon <nick>,SHIFT . . Forces uppercase shift
/Signon <nick>,UNSHIFT . Forces lowercase shift
/Signoff . . . . . . . . . . Signoff from Relay
/SIGNUP <full name>. Signup or change full name
/STats . . . . . . . . Display Relay statistics
/SUmmon <userid>@<node>. . Invite user to Relay
/Topic <subject> . . . . Topic for your channel
/Who <channel> . . . . Show users and nicknames
/WHOIs <nick>. . . . . . . .Identify a nickname 

/LINKS    
RELAY Version 01.24x0 Host RELAY@FINHUTC (Finland)
Relay  RELAY  @ CEARN   (  Geneva  ) ->  Finland
Relay  RELAY  @ DEARN   ( Germany  ) ->  Geneva
Relay  RELAY  @ AEARN   ( Austria  ) ->  Germany
Relay  RELAY  @CZHRZU1A (  Zurich  ) ->  Geneva
Relay  RELAY  @ HEARN   ( Holland  ) ->  Geneva
Relay  RELAY  @TAUNIVM  ( TAUrelay ) ->  Geneva
Relay  RELAY  @EB0UB011 (Barcelona ) ->  Geneva
Relay  RELAY  @ ORION   (New_Jersey) ->  Geneva
Relay  RELAY  @ BITNIC  ( NewYork  ) ->  New_Jersey
Relay  RELAY  @JPNSUT10 (  Tokyo   ) ->  NewYork
Relay  RELAY  @ VILLVM  (Philadelph) ->  New_Jersey
Relay  RELAY  @NDSUVM1  (No_Dakota ) ->  New_Jersey
Relay  RLY   @CORNELLC (Ithaca_NY ) ->  New_Jersey
Relay  RELAY  @ UTCVM   (Tennessee ) ->  Pittsburgh
Relay  RELAY  @UIUCVMD  (Urbana_IL ) ->  Pittsburgh
Relay  RELAY  @CANADA01 ( Canada01 ) ->  Ithaca_NY
Relay  RELAY  @  AUVM   ( Wash_DC  ) ->  Va_Tech
Relay  RELAY  @ VTVM2   ( Va_Tech  ) ->  Ithaca_NY
Relay  RELAY  @UALTAVM  ( Edmonton ) ->  Canada01
Relay  RELAY  @NYUCCVM  (   Nyu    ) ->  New_Jersey
Relay  RELAY  @  UWF    (Pensacola ) ->  Va_Tech
Relay MASRELAY@  UBVM   ( Buffalo  ) ->  Ithaca_NY
Relay  RELAY  @CMUCCVMA (Pittsburgh) ->  Ithaca_NY
Relay  RELAY  @PURCCVM  (  Purdue  ) ->  Pittsburgh
Relay  RELAY  @UREGINA1 (Regina_Sk ) ->  Canada01
Relay  RELAY  @ GITVM1  ( Atlanta  ) ->  Tennessee 

The Relay servers were connected between each other in a rudimentary multicast fashion, so messages would travel hop by hop along the network of servers. A behaviour that inspired the name of the system to be Relay.

The time it took for a message to get to a recipient varied. Most of the time messages within the United States didn't take more than a few seconds. Sometimes, however, messages could take many minutes or even hours to arrive if network links were down, because BITNET would store and forward them later.

A downside to Bitnet Relay was that it was enforced network-wide as the only permitted chat system. Users were not allowed to develop alternate chat systems, be it for personal research, fun or a craving for privacy. Experimental chats like Galaxy Network or VM/Shell were asked to shut down before they gained popularity.

Bitnet Relay was used mostly in the late 1980s when Valdis Kletnieks at Virginia Tech released a Pascal version from scratch that consumed far less CPU time and early 1990s when Smart Relay appeared which allowed more impressive handling of message delivery.

Kell himself once predicted the demise of Bitnet Relay, his prophecy proved true for reasons far different than the ones he himself gave. TCP/IP and the advent of the Internet spelled the end of BITNET entirely and Unix did not have a similar socket mechanism. However the Relay Chat itself was somewhat closely replicated by Jarkko Oikarinen's Internet Relay Chat.

External links